package com.demo.auth.controller;

import com.demo.common.base.pojo.JsonRes;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * @author zhaoxinguo on 2017/9/13.
 */
@Slf4j
@RestController
@RequestMapping("/users")
public class UserController extends BaseController {


    /**
     * 获取用户列表
     * @return
     */
    @GetMapping("/userList")
    public JsonRes<String> userList(){
        return JsonRes.okMsg("456789");
    }

    /**
     * 新增用户
     * @return String
     */
    @PreAuthorize("hasAuthority('user-list-add')")
    @PostMapping("/addUser")
    public JsonRes<String> addUser(){
        return JsonRes.okMsg("456789");
    }


    /**
     * 获取用户权限
     * @return
     */
    @PreAuthorize("hasAuthority('authorityList')")
    @GetMapping("/authorityList")
    public JsonRes<List<String>> authorityList(){
        List<String> authentication = getAuthentication();
        return JsonRes.ok(authentication);
    }

    /**
     * 获取用户列表V2-验证不登录就可以直接请求该接口（前端传递token的情况下）
     * @return
     */
    @GetMapping("/userListV2")
    public JsonRes<String> userListV2(){
        return JsonRes.okMsg("测试userListV2");
    }

}
